Repository navigation
feat(mcp-server): typed fields for agents (RFC-0041 step 4) - #97
Merged
Merged
Conversation
- list_collections returns fields and fieldsSchema (by locale). - create_entry / update_entry check fields in precheck (changed-only, unknown keys, non-localized on translations, requiredToPublish, assets); update_entry takes fields as a merge patch and its approval lists typed changes. - update_collection takes field definitions; risky edits are refused with a hint naming the operation tools. - New tools rename_field, change_field_type, set_field_localized and remove_field: site:write + content:write, a person holding site:settings approves in every mode, the approval shows the dry run, continuing needs a new approval. 105 → 109 tools. - Hints for every field code; server instructions on typed fields. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Madraka <8898640+Madraka@users.noreply.github.com>
This was referenced Oct 23, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Step 4 of RFC-0041's rollout (ADR-0043), built on #94–#96.
Tools (105 → 109)
list_collections: a newlocaleinput; returnsfieldsandfieldsSchema(fieldsJsonSchema) for collections that define fields.create_entry/update_entry: fields are checked inprecheck, so invalid output never reaches the person approving. The checks cover changed keys only, unknown keys, non-localized values on translations,requiredToPublishwhen the target is review or published, and assets in the same site. Refusals carrydetails.issueswith paths.update_entry: takesfieldsas a merge patch (nullremoves a key), and its approval prompt lists the typed changes readably.update_collection: takesfields. The store's guard runs in a dry run, so risky edits are refused withfield_change_needs_operationand a hint naming the operation tools.rename_field,change_field_type,set_field_localized,remove_field.site:write+content:write,approverScopes: ["site:settings"],requiresApproval; they wait for a person in every mode, bypass included. No new scopes.operationId) needs a new approval (ADR-0043 Q9).dryRunwith anoperationIdreturns the status.Tests
Follow-ups
get_translation_sourceshould return only localized values, andsave_translationshould refuse non-localized ones. The store already refuses them (field_not_localized).create_collectiondoesn't takefields; adding them to a new collection takes a second approved call.Changeset: minor (
mcp-server).🤖 Generated with Claude Code